Skip to content

Don't propagate a full verification scheduler out of HandleMessage - #588

Merged
samliok merged 3 commits into
mainfrom
fix/replication-scheduler-backpressure
Sep 11, 2026
Merged

samliok merged 3 commits into
mainfrom
fix/replication-scheduler-backpressure

Conversation

@samliok

@samliok samliok commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

Claude noted this as different then how we handle block messages and I agreed

processFinalizedBlock and processNotarizedBlock returned
ErrTooManyPendingVerifications straight up through processReplicationState
and handleReplicationResponse to Epoch.HandleMessage, surfacing it to the
embedding application. A full scheduler is backpressure, not a fatal error.

Both now log and drop the block, matching how the proposal path already
handles a failed schedule. Other errors still propagate.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@samliok
samliok marked this pull request as ready for review September 9, 2026 16:31
@yacovm

yacovm commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

what about the non-validator?

@samliok

samliok commented Sep 10, 2026

Copy link
Copy Markdown
Collaborator Author

what about the non-validator?

I could add but i dont think its likely to happen for a non-validator. We only schedule blocks that are nextSeqToCommit, so if our block scheduler is full something else is probably wrong

@samliok
samliok merged commit 46940c4 into main Sep 11, 2026
7 checks passed
@samliok
samliok deleted the fix/replication-scheduler-backpressure branch September 11, 2026 14:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants